import java.util.HashSet;
import java.util.Set;

public class Main {
    public static String solution(int n, int[] a) {
        // 用于存储所有不同的素因子
        Set<Integer> primeFactors = new HashSet<>();

        // 遍历数组中的每个元素，进行素因子分解
        for (int num : a) {
            // 从2开始尝试分解，直到sqrt(num)
            for (int i = 2; i <= Math.sqrt(num); i++) {
                // 如果num能被i整除，则i是一个素因子
                while (num % i == 0) {
                    primeFactors.add(i); // 将素因子i添加到集合中
                    num /= i; // 将num除以i，继续分解
                }
            }
            // 如果num本身是一个素数（即num > 1），则将其添加到集合中
            if (num > 1) {
                primeFactors.add(num);
            }
        }

        // 判断素因子的种类数是否超过数组的长度
        if (primeFactors.size() > n) {
            return "No"; // 如果素因子种类数超过数组长度，返回"No"
        } else {
            return "Yes"; // 否则，返回"Yes"
        }
    }

    public static void main(String[] args) {
        // 测试样例
        System.out.println(solution(4, new int[]{1, 2, 3, 4}).equals("Yes"));  // 输出：true
        System.out.println(solution(2, new int[]{10, 12}).equals("No"));      // 输出：true
        System.out.println(solution(3, new int[]{6, 9, 15}).equals("Yes"));   // 输出：true
    }
}